package main

import (
	_ "fmt"
)

type Usb interface{
	Stop()
	Start()
}

type A struct{

}

type B struct{

}

type C struct{

}

func (a A) Start(){}
func (b B) Start(){}
func (a A) Stop(){}
func (b B) Stop(){}

func (c C) Start(){}
func (c C) Stop(){}
func main(){
	var us [3]Usb
	var u [3]Usb=[3]Usb{A{},B{},C{}}
	for i:=0;i<len(us);i++{
		us[i]=u[i]
	}

	// fmt.Println(us)
	var fn func([3]Usb) = func(us [3]Usb){
		for _,val:=range us{
			val.Start()
		}
	}
	fn(us)
}